Computer programs containing many possible "branches" are now well known. Most often, the "path" through the branches are determined by the results obtained in one or more earlier branches. Telephony call centers are one example of a use of a program containing one or more branches. Such programs used in the Telephony call center industry are often "scripting" programs since the various branches contain "scripts" (prepared phrases to be read over the phone).
Telephony call centers are generally used to control in-bound call distribution and outbound call activities for organizations such as banks, credit card collection agencies, and telemarketing companies, among others. Since such telephony call centers generally utilize a script for their telephone agents to read and follow for each call, there will be different scripts for certain or each type of telephony call center activity (call campaigns) currently in use by each telephone call center.
For example, a call campaign for a credit card company collecting past due accounts will need a very different script than a call campaign selling home improvement products. As each agent is connected to a particular call, which may be either an in-bound or an outbound call, a telephony call center management system of the call center will provide the agent with a script to follow for that particular telephone call.
The scripting program will provide an agent with the scripts containing dialog and questions to ask the called party. In addition, the scripting program will generally have a "branching" capability which will direct the telephone call agent to different questions or text (scripts) based on the party's response to a previously asked question.
When using a call script, the telephone call agent will ask the called party a question. The response will be entered into the call center system by the agent, such as by depressing a predetermined button on the agent's keyboard or by selecting the proper response from a list using a mouse or other pointing device (input code) and depending upon the response from the party, the scripting program will then determine and display the text of the next branch of the scripting program based upon the answer given to one or more previous questions.
Although great effort goes into developing the scripting program text and scripting branch flow, there are times when one or more branches of the scripting program will fail to produce the desired results. A script branch may fail in several ways. The scripting program may fail to reach a satisfactory conclusion in that it may fail to reach the end of the scripting program due to the called party hanging up, or it may reach the end of the scripting program but without the desired results being obtained, i.e., no sale was completed.
There is no capability in the current state of the art in telephony call center scripting program management systems to either monitor the status and flow of information through a scripting program, or to modify the scripts or the script branching in a scripting program used by call center agents.
Accordingly, it would be extremely useful for a call center supervisor to have before him or her information pertaining to the results achieved by the scripting program. Information such as which particular branch(es) of the scripting program are leading to paths (branches) which ultimately lead to desired results being obtained, and which branches are leading to paths which are not obtaining satisfactory results would be very useful in order to measure the effectiveness of the scripting program. The supervisor could then be given the capability to modify the scripting program (the script text itself or the script program branching) in an effort to achieve more desirable results.
A supervisor should also be able to monitor the branch activity dynamically, i.e., in real time, in order to make the most effective use of this information. Also, a supervisor would like to be able to dynamically modify the scripting program in order to minimize the time in which the scripting program is operating inefficiently. In this way, a supervisor could have continuous feedback as to the effectiveness of the scripting program, and any modifications made to it.
Accordingly, what is needed is a system and method to monitor and modify a scripting or other similar "branching" type program used by, for example, telephone call center agents or similar environments.